การเลือกระหว่าง git archive และ git bundle ขึ้นอยู่กับว่าคุณกำลังส่งโค้ดต้นฉบับหรือประวัติการจัดเก็บที่สามารถนำย้ายไปใช้ได้
1. การรวมหรือไม่รวมเมตาดาต้า
ปัจจัยทางเทคนิคหลักคือการจัดการกับ .git directory (ภายในวัตถุ). Git archive ตั้งใจละทิ้งเมตาดาต้านี้เพื่อให้ได้โครงสร้างไฟล์ที่เบาและเรียบร้อย ตรงข้ามกันคือ Git bundle เก็บรักษากราฟวัตถุทั้งหมด ทำให้ไฟล์กลายเป็น ต้นทางระยะไกล (ภายในวัตถุ).
2. เมทริกซ์กลยุทธ์
| คุณสมบัติ | Git Archive | Git Bundle |
|---|---|---|
| รวม .git หรือไม่? | ไม่ | ใช่ |
| ประวัติการส่งคำขอเปลี่ยนแปลง | ไม่มี | ครบ |
| การใช้งาน | การนำไปใช้งาน | การขนส่ง |
| รูปแบบ | .zip / .tar | ไบนารี |
3. การคงสถานะ
เมื่อต้องการจุดหมายของ สาขาหลัก (ภายในวัตถุ) ไฟล์จัดเก็บจะเป็นภาพถ่ายที่ไม่เปลี่ยนแปลง ขณะที่ไฟล์ชุดข้อมูลจะคงความสมบูรณ์ของ สาขาหลัก (quick_reference), allowing the recipient to perform git log และอัปเดตแบบเพิ่มเติม
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>